package com.qf.day12.linkedList;

import java.util.LinkedList;

/**
 * 练习：
 * 给定一个包含小括号的字符串，例如"1+((a+b)/c)+5/(2+a)",请写一个方法判断该字符串中的小括号是否成对出现。
 */
public class StackDemo02 {

    public static void main(String[] args) {
        String s = ")1+((a+b)/c)+5/(2+a)";

        boolean flag = testXkh(s);
        System.out.println(flag);
    }

    private static boolean testXkh(String s) {
        //不把s存进集合里,遇到(入栈,遇到)出栈,比较栈的size
            LinkedList<Character>linkedList=new LinkedList<>();
            char[] charArray=s.toCharArray();
        for (int i = 0; i < charArray.length; i++) {
            if(charArray[i]=='('){
                linkedList.push(charArray[i]);
            }
            if (charArray[i]==')'){
                try {
                    linkedList.pop();
                } catch (Exception e) {
                    return false;
                }
            }
        }

         return linkedList.size()==0;
    }

}
